package com.wang.proxydemo.staticProxy;

/**
 * 代理类 AnimalProxy
 */
public class AnimalProxy implements IAnimal {

    private final Animal animal;

    public AnimalProxy(Animal animal) {
        this.animal = animal;
    }
    @Override
    public void eat() {
        // 前置处理
        System.out.println("饲养员准备食物");
        animal.eat();
        // 后置处理
        System.out.println("饲养员收拾剩余食物");
    }

    @Override
    public void sleep() {
        // 前置处理
        System.out.println("饲养员准备草席");
        animal.sleep();
        // 后置处理
        System.out.println("饲养员叫醒小动物");
    }
}
